#! /bin/bash

> ../dados/degree
> exercicio_1_a.gnu

while read autor
do

        degree=$(grep -iw  "${autor}" ../dados/coautores | tr -s " " | tr "&" "\n"  | sed "s/^ //g" | sed "s/ $//g"  | sort | uniq -i | wc -l)

	#Remove o proprio vertice da contagem 
        degree=$((degree -1 ))


	#comando para gerar a entrada do sketterplot de degree
         echo -e "$degree" >> ../dados/degree

done < ../dados/autores


#Prepara o arquivo degree para servir de entrada no gnuplot

cat ../dados/degree | sort -n | uniq -c | awk '{print $2 " " $1}' | sed '1d' > ../dados/degree_skatter

mv ../dados/degree_skatter ../dados/degree

#Plot sem escala log
echo "#! /usr/bin/gnuplot" > exercicio_1_a.gnu
echo "set term png" >> exercicio_1_a.gnu
echo 'set output "../graficos/exercicio1_a.png"' >> exercicio_1_a.gnu
echo 'set title "Numero de vertices por Degree"' >> exercicio_1_a.gnu
echo 'set xlabel "Degree"' >> exercicio_1_a.gnu
echo 'set ylabel "Numero de vertices"' >> exercicio_1_a.gnu
echo 'plot "../dados/degree"' >> exercicio_1_a.gnu

#Plot com escala log
echo "#! /usr/bin/gnuplot" > exercicio_1_b.gnu
echo "set term png" >> exercicio_1_b.gnu
echo 'set output "../graficos/exercicio1_b.png"' >> exercicio_1_b.gnu
echo "set log x" >> exercicio_1_b.gnu
echo "set log y" >> exercicio_1_b.gnu
echo 'set title "Numero de vertices por Degree"' >> exercicio_1_b.gnu
echo 'set xlabel "Degree (log)"' >> exercicio_1_b.gnu
echo 'set ylabel "Numero de vertices (log)"' >> exercicio_1_b.gnu
echo 'plot "../dados/degree"' >> exercicio_1_b.gnu

#Gera o grafico
chmod +x exercicio_1_a.gnu
chmod +x exercicio_1_b.gnu

if [ ! -f /usr/bin/gnuplot ]
then
	echo -e '\033[01;31mGnuplot nao instalado\033[00;37m'
else
	./exercicio_1_a.gnu
	./exercicio_1_b.gnu
fi

